Dynomotion

Group: DynoMotion Message: 13049 From: embraced338 Date: 4/3/2016
Subject: Best solution for Spindle control
Hi all,

I've got a many systems running KFlop+Konnect, and it meets all my needs except for spindle control (i.e. 0-10v).

The systems are all => 4 axis step&dir, so using a Kanalog is out of the question as I'm not able to surrender 4 axes to analog I/O.

I have been using both a CNC4PC C6 PWM to 0-10v converter, and a Homann Designs DC-03 PWM to 0-10v converter on an axis channel.
They both have horrific linearity (presumably) due to the short pulse width of the KFlop (even maxed out at 3.78us).

Currently I've been dealing with this by mapping the commanded speed vs real speed, and creating a correction algorithm, usually comprised of 30 or so 'speed ranges' with their own correction multiplier.

This is obviously not ideal, and seems to vary board-to-board.


My question is this: for a system comprising of a KFlop+Konnect, what is the best solution for accurately commanding a 0-10v signal for a VFD?



Thanks,



Lindsay

Group: DynoMotion Message: 13053 From: Tom Kerekes Date: 4/3/2016
Subject: Re: Best solution for Spindle control
Hi Lindsay,

Does the VFD or Spindle have any form of digital feedback?  ie. an encoder?

Or can you use a VFD with digital control such as Step/Dir?

Regards
TK




On 4/3/2016 3:21 AM, embraced338@... [DynoMotion] wrote:
 

Hi all,


I've got a many systems running KFlop+Konnect, and it meets all my needs except for spindle control (i.e. 0-10v).

The systems are all => 4 axis step&dir, so using a Kanalog is out of the question as I'm not able to surrender 4 axes to analog I/O.

I have been using both a CNC4PC C6 PWM to 0-10v converter, and a Homann Designs DC-03 PWM to 0-10v converter on an axis channel.
They both have horrific linearity (presumably) due to the short pulse width of the KFlop (even maxed out at 3.78us).

Currently I've been dealing with this by mapping the commanded speed vs real speed, and creating a correction algorithm, usually comprised of 30 or so 'speed ranges' with their own correction multiplier.

This is obviously not ideal, and seems to vary board-to-board.


My question is this: for a system comprising of a KFlop+Konnect, what is the best solution for accurately commanding a 0-10v signal for a VFD?



Thanks,



Lindsay


Group: DynoMotion Message: 13057 From: embraced338 Date: 4/3/2016
Subject: Re: Best solution for Spindle control
Hi Tom,

Yes the VFD has a PWM output (open collector, 50% duty cycle) proportional to the output frequency (this output frequency can also be scaled up to 20 times the output frequency - so a 400Hz commanded frequency could be scaled to produce an 8KHz output).

Attached is a screenshot of the page outlining this feature of the VFD.

Unfortunately the VFD is unable to be controlled by a pulse train (to my knowledge).

The VFD in question is a Delta VFD-B.


Thanks,


Lindsay
  @@attachment@@
Group: DynoMotion Message: 13060 From: Tom Kerekes Date: 4/3/2016
Subject: Re: Best solution for Spindle control [1 Attachment]
Hi Lindsay,

In that case you should be able to create a closed loop speed control axis for exact speed control.  Wire the pulse stream up to a KFLOP encoder.  Then if you command the Axis to Jog at say 2KHz the Servo Output should vary until the feedback is 2KHz.

Unfortunately KFLOP encoder inputs require quadrature to count not just a single pulse stream.  But you might use a simple RC circuit to create a phase lagged signal for the B channel.  Here is a related post.  Although the post shows a differential signal, the same approach should work with a single ended signal.
http://www.cnczone.com/forums/dynomotion-kflop-kanalog/264044-machinist-2.html#post1756198

Let me know how much of this makes sense.
Regards
TK


On 4/3/2016 4:57 PM, embraced338@... [DynoMotion] wrote:
 

Hi Tom,


Yes the VFD has a PWM output (open collector, 50% duty cycle) proportional to the output frequency (this output frequency can also be scaled up to 20 times the output frequency - so a 400Hz commanded frequency could be scaled to produce an 8KHz output).

Attached is a screenshot of the page outlining this feature of the VFD.

Unfortunately the VFD is unable to be controlled by a pulse train (to my knowledge).

The VFD in question is a Delta VFD-B.


Thanks,


Lindsay

Group: DynoMotion Message: 13061 From: embraced338 Date: 4/4/2016
Subject: Re: Best solution for Spindle control [1 Attachment]
Thanks Tom.

I'll look into that as a potential solution.

The aim is to have accurate control over the VFD.
I am not committed to the 0-10V option however.

The options I see for a KFlop+Konnect system are:

0-10V: External PWM to analogue control boards (at least the ones I'm aware of) are unable to interpret the KFlop's short pulse length, and as a result suffer from poor linearity and inconsistency board-to-board.
If the problem exists with the KFlop's short pulse length, is it possible to somehow implement a device to stretch the pulse length to suit these boards?
Alternatively, find/create a 0-10V generator that actually works.

4-20mA: No experience. I presume that they would also suffer from the same sort of problems due to pulse length limitations.

Pulse train: My VFDs do not support this, and even the models that do may too have the same issues experienced with my current PWM to analogue boards.

Serial communication (MODBUS via RS485): Best solution regarding control, but as I'm aware it's *very* difficult to implement, and different manufacturer's may have a different interpretation of the MODBUS protocol - requiring manufacturer-specific spindle speed programs to be written.

Up/Down counter inputs: The Delta VFDs (and some other manufacturers) have inputs configurable to increment/decrement the frequency command by some amount on a rising or falling edge. Perhaps this could be used with the closed-loop strategy you suggest?


There may be other options available that I'm not aware of.

Do you have any suggestions regarding the best path to follow?


Thanks,


Lindsay






Group: DynoMotion Message: 13065 From: Moray Cuthill Date: 4/4/2016
Subject: Re: Best solution for Spindle control
Lindsay,

FWIW I don't think I've ever come across a good step/dir to 0-10V convertor with good linearity. I suspect they're influenced by both the input and load, meaning for good accuracy you have to rely on some form of lookup/correction table.

Modbus isn't that bad to implement, provided you have a good manual for the VFD explaining the registers/commands, and understand how the addressing/registers work. I've never personally used it for VFD, however I use it to talk a PLC and other than an initial problem with the Kanalog pinout (Kanlog provides a RS232 converter for the LVTTL serial pins on the KFlop) being the wrong way around in the manual, and me not using the correct register in the PLC due to me not understanding the commands/register addressing (I tried writing to a single bit, rather than writing to the full register), it was reasonably easy.
Yes, you will most likely have to adjust things slightly for different VFDs, but once you've got one working, you should have a better understanding of what you need to do to get others working.
However without a Kanalog, you're most likely going to need to add some form of RS232/485 converter for the KFlop.

For me personally, if I didn't need full closed loop/positional feedback, I'd be considering the Modbus option, as you're going to get a guaranteed speed, without the expense of adding an encoder. However if I needed positional feedback (I'm thinking mill/lathe with the need for synchronised spindle/axes), I'd be adding an encoder.

Moray

On Mon, Apr 4, 2016 at 10:14 AM, embraced338@... [DynoMotion] <DynoMotion@yahoogroups.com> wrote:
 

Thanks Tom.


I'll look into that as a potential solution.

The aim is to have accurate control over the VFD.
I am not committed to the 0-10V option however.

The options I see for a KFlop+Konnect system are:

0-10V: External PWM to analogue control boards (at least the ones I'm aware of) are unable to interpret the KFlop's short pulse length, and as a result suffer from poor linearity and inconsistency board-to-board.
If the problem exists with the KFlop's short pulse length, is it possible to somehow implement a device to stretch the pulse length to suit these boards?
Alternatively, find/create a 0-10V generator that actually works.

4-20mA: No experience. I presume that they would also suffer from the same sort of problems due to pulse length limitations.

Pulse train: My VFDs do not support this, and even the models that do may too have the same issues experienced with my current PWM to analogue boards.

Serial communication (MODBUS via RS485): Best solution regarding control, but as I'm aware it's *very* difficult to implement, and different manufacturer's may have a different interpretation of the MODBUS protocol - requiring manufacturer-specific spindle speed programs to be written.

Up/Down counter inputs: The Delta VFDs (and some other manufacturers) have inputs configurable to increment/decrement the frequency command by some amount on a rising or falling edge. Perhaps this could be used with the closed-loop strategy you suggest?


There may be other options available that I'm not aware of.

Do you have any suggestions regarding the best path to follow?


Thanks,


Lindsay







Group: DynoMotion Message: 13084 From: embraced338 Date: 4/6/2016
Subject: Re: Best solution for Spindle control
Moray,

Thanks for the feedback.

What would be ideal is for Tom to design me a single-channel DAC based analog output board - i.e. one Kanalog channel for my spindle control!! (are you there Tom?).

I suspect that most of these speed controllers are using a much simpler method of commanding an analog output - not a DAC.

I will look into the Modbus. I have some TTL to RS485 boards I can use...


Thanks,


Lindsay
Group: DynoMotion Message: 13088 From: Tom Kerekes Date: 4/6/2016
Subject: Re: Best solution for Spindle control
Hi Linday,

Feedback noted.  But it is always difficult (and expensive) to achieve better than 1% accuracy with Analog.  What accuracy do you require?  How much would you be willing to pay for such a board?

Regards
TK

On 4/6/2016 1:32 AM, embraced338@... [DynoMotion] wrote:
 

Moray,


Thanks for the feedback.

What would be ideal is for Tom to design me a single-channel DAC based analog output board - i.e. one Kanalog channel for my spindle control!! (are you there Tom?).

I suspect that most of these speed controllers are using a much simpler method of commanding an analog output - not a DAC.

I will look into the Modbus. I have some TTL to RS485 boards I can use...


Thanks,


Lindsay

Group: DynoMotion Message: 13096 From: Steve Blackmore Date: 4/6/2016
Subject: Re: Best solution for Spindle control
On Mon, 4 Apr 2016 18:36:27 +0100, you wrote:

>FWIW I don't think I've ever come across a good step/dir to 0-10V convertor
>with good linearity. I suspect they're influenced by both the input and
>load, meaning for good accuracy you have to rely on some form of
>lookup/correction table.

Getting a linear voltage from PWM is not a trivial task. I've played
with R/C circuits, DAC's and combinations and you will not get a fully
0-10V linear voltage in my experience. In practice it's not that
critical anyway.

A lookup table helps assuming the load is linear, but it isn't a
guaranteed 100% fix in machining operations.

An encoder, however, is mandatory to get an accurate readout of speed.

Generally it's quicker and easier to alter the motion feed rate rather
than try to correct the spindle speed. A good VFD will try and correct
any load/speed variation internally anyway, that combined with motion
corrections in software generally work very well if set up correctly.

However I have seen occasions where a VFD and a CNC controller's spindle
speed corrections end up fighting each other causing massive over
correction and severe hunting on the spindle drive motor.

It takes some time to tune everything to an acceptable level of
performance and there is no one stop fix.


Steve Blackmore
--
Group: DynoMotion Message: 13106 From: embraced338 Date: 4/7/2016
Subject: Re: Best solution for Spindle control
I think for my purposes, Modbus spindle speed control is the best solution.

I've got TTL to RS485 boards i'll be using.

Many programming posts to come...